home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 030a / tbscan20.zip / TBSCAN.DOC < prev    next >
Text File  |  1991-01-27  |  36KB  |  791 lines

  1.     Documentation for TbScan V2.0
  2.  
  3.  
  4.  
  5. Regulations with regard to use and distribution of TbScan
  6. ---------------------------------------------------------
  7.  
  8.     Both TbScan and the  accompanying documentation are FREE-WARE.  This
  9.     simply means the program is covered by the copyrights of ESaSS,  but
  10.     can  be  used  and  distributed  freely  as  long  as  the following
  11.     regulations are observed.
  12.  
  13.     +   The program can be used by everyone, this also includes
  14.         commercial organisations, such as companies.
  15.  
  16.     +   For neither the TbScan program nor the accompanying docu-
  17.         menations any charges may be made.
  18.  
  19.     +   Concerning the distribution of the TbScan program no
  20.         administration and/or shipping costs exceeding the amount of
  21.         $5,- may be charged.
  22.  
  23.     +   Distribution of TbScan may only take place when both the program
  24.         and the documentation are left unmodified and only when the
  25.         complete program is supplied.
  26.  
  27.     +   So it is not allowed to distribute the program apart from the
  28.         documentation.
  29.  
  30.     +   ESaSS accepts no responsibility in case the program malfunctions
  31.         or does not function at all.
  32.  
  33.     +   ESaSS can never be held responsible for damage, directly or
  34.         indirectly resulting from the use of TbScan.
  35.  
  36.     +   Using TbScan means that you agree on these regulations.
  37.  
  38.  
  39.  
  40. Description TbScan
  41. ------------------
  42.  
  43.     TbScan is  a program  that was  developed to  trace viruses,  Trojan
  44.     Horses and other  threats to your  valuable data. It  is a so-called
  45.     virus scanner.
  46.  
  47.     A virus  scanner is  a program  that is  able to  search a signature
  48.     that  has  been  determined  beforehand.  Most  viruses consist of a
  49.     unique signature,  so by  means of  checking for  the appearance  of
  50.     this  signature  we  can  see  whether  or  not  a  program has been
  51.     infected.
  52.  
  53.     By  searching  all  your  program  files  for  the signatures of all
  54.     viruses already identified you  can easily find whether  your system
  55.     has been infected and, if that is the case, with which virus.
  56.  
  57.     By now already lots of  virus scanners have been developed.  However
  58.     TbScan has a number  of important and unique  characteristics. These
  59.     are:
  60.  
  61.  
  62.     +   TbScan works extremely fast.
  63.  
  64.         Most  virus  scanners  do  not   work  very  quickly.  This   is
  65.         nevertheless very important because you are surely one of  those
  66.         people who do not like to  stare at their display for a  quarter
  67.         of an hour. When a program  works slowly it is used less  often,
  68.         that is  a fact.  And even  the best  virus scanner is worthless
  69.         when it is not used.
  70.  
  71.         That is why special attention has been paid to the speed of  the
  72.         program. The result  is that on  average TbScan works  ten times
  73.         faster compared to other virus scanners.
  74.  
  75.         This speed can be achieved due to four measures:
  76.         1) The program has completely been written in machine
  77.            language.
  78.         2) The program uses the obsolete but faster FCB
  79.            functions of DOS.
  80.         3) The string search routine is highly optimised, and makes use
  81.            of special algorithms.
  82.         4) The program does not read the whole file, but only
  83.            the part in which viruses could appear. This is safe
  84.            because of the built-in interpreter that determines the
  85.            internal structure of a program. At the end of this file you
  86.            can read more about this interpreter.
  87.  
  88.  
  89.     +   TbScan can work separately from viruses that are already  active
  90.         in the memory. This is possible through a built- in debugger!
  91.  
  92.         A lot  of viruses  are memory  resident, which  means they lodge
  93.         themselves in the memory of  your computer. From there they  can
  94.         easily influence all active programs you use. There are  already
  95.         viruses that "desinfect" a program  file, as soon an attempt  is
  96.         made to read it. When such  a virus is active, a virus  scanner,
  97.         reading a  program file  in order  to check  it, finds  that the
  98.         file is not infected (which is true at that moment).  But  after
  99.         the program file has been read the file is immediately  infected
  100.         again.  So  the  virus  scanner  reports  that no virus has been
  101.         found, but in reality it is actually there.
  102.  
  103.         TbScan offers a  unique solution for  this problem: it  contains
  104.         an automatic debugger  that works its  way through the  chain of
  105.         interrupts "single  stepping" until  it reaches  the DOS program
  106.         code. It saves the address which  is then found and uses it  for
  107.         the communication  with DOS.  In this  way viruses  will not see
  108.         anything of the operations of TbScan.
  109.  
  110.  
  111.     +   TbScan is fully programmable by means of a data file.
  112.  
  113.         Most of the time viruses  spread quickly. After a new  virus has
  114.         been found there  is often no  time to adapt  your virus checker
  115.         in order to make it capable of recognizing this new virus.  That
  116.         is why TbScan uses  a data file in  which the signatures of  the
  117.         viruses occur.  This file  can quickly  be adapted,  possibly by
  118.         yourself,  for  example  when  you  are  informed of a new virus
  119.         through  the  media.  TbScan  supports  among  other  things the
  120.         format which  is used  in the  file "virscan.dat".  This file is
  121.         regularly adapted and can be obtained at a lot of data banks.
  122.  
  123.  
  124.     +   TbScan supports wildcards in the signature.
  125.  
  126.         A lot  of viruses  encrypt themselves  after each  infection, so
  127.         the signatures always look different.  There is one part of  the
  128.         virus however that cannot be  modified: the routine that has  to
  129.         "unpack" the modified part of the virus.
  130.  
  131.         But it is a misunderstanding that this part of the virus  always
  132.         should look the same. The fact is there are viruses that  pepper
  133.         their  unpack-routine  with  useless  instructions which have no
  134.         effect and which are continuously replaced by other  nonsensical
  135.         instructions. Although the  unpack-routine always functions  the
  136.         same, it looks  different every time  because of these  changing
  137.         fake instructions!
  138.  
  139.         By inserting  wildcards on  places where  the fake  instructions
  140.         occur  in  the  signatures  of  the  data file, such a virus can
  141.         still be  traced and  identified. This  is the  case because any
  142.         character may be used on the place of a wildcard.
  143.  
  144.         It is also possible to  skip a variable amount of  garbage bytes
  145.         in the signature.
  146.  
  147.  
  148.     +   TbScan supports normal text as the signature.
  149.  
  150.         Most signatures are inserted in ASCII-HEX. But when desired  you
  151.         can also specify  a normal text  as the signature.  In this case
  152.         you put the text between double quotation marks.
  153.  
  154.  
  155.     +   TbScan can also search the memory of your PC for viruses.
  156.  
  157.         When  in  the  future  viruses  should  be created that for some
  158.         reason  cannot  be  found  in  the  program file anymore, TbScan
  159.         offers you  the possibility  of tracing  them in  the memory  of
  160.         your PC  itself. So  in any  case you  will know  whether or not
  161.         your PC has been infected by a certain virus.
  162.  
  163.  
  164.     +   TbScan  also searchs for viruses  in the partition table  of the
  165.         hard  disk.  Some  viruses  use  the  partitiontable  as   their
  166.         residence. Not all virus scanners inspect the partition table.
  167.  
  168.  
  169.  
  170. USAGE OF THE PROGRAM
  171. --------------------
  172.  
  173.     TbScan is easy to use. The syntaxis is as follows:
  174.             TBSCAN [<path>][<filename>]... [<options>]...
  175.  
  176.     Drive and  path show  from where  should be  searched. To search the
  177.     disk C:\ and disk D:\ you have to enter:
  178.             TBSCAN C:\ D:\
  179.  
  180.     When no filename  has been specified  but only a  drive and/or path,
  181.     then the  specified path  will be  used as  top-level path.  All its
  182.     subdirectories will be processed too.
  183.  
  184.     When a  filename has  been specified  then only  the specified  path
  185.     will be searched. Subdirectories will not be processed.
  186.  
  187.     Wildcards in  the filename  are allowed.  It is  allowed to  specify
  188.     "*.*".   All executable  files will  be processed.  If you  want the
  189.     non-executables to be  processed too, then  you have to  specify the
  190.     "-a" parameter in combination  with the filename. "TBSCAN  TEST.DAT"
  191.     will always cause  that no file  will be processed:  test.dat is not
  192.     an  executable  file.  In  this  case  you  have  to  specify the -a
  193.     parameter.
  194.  
  195.  
  196.     It is possible to specify so-called options on the command line.
  197.  
  198.     The following options are available:
  199.         -h              = help, display this helptext.
  200.         -f <filename>   = use specified signature file
  201.         -q              = quiet mode, don't print filenames.
  202.         -v              = verbose, display entry addresses.
  203.         -m              = enable "More" prompt.
  204.         -d              = use direct calls into DOS and BIOS.
  205.         -a              = force analyze on all files.
  206.         -s              = skip bootsector and partition table.
  207.         -r              = skip resident virus scan.
  208.         +r              = search all viruses in memory.
  209.         -l [<filename>] = create logfile.
  210.         +l [<filename>] = append logfile.
  211.         -n              = do not search in subdirectories.
  212.         +n              = always search in subdirectories.
  213.         -u              = unauthorized signatures allowed.
  214.  
  215.     -F  You can override the default path en name of the signature  file
  216.         by using this option.
  217.  
  218.     -Q  By  default  TbScan  shows  the  name  of every  file it checks,
  219.         together with  the used  scanning method  and the  result of the
  220.         inspection. When this  option has been  specified you will  only
  221.         see  a  counter  at  work  when  TbScan is operating. Of course,
  222.         infected files will be printed on the screen anyway.
  223.  
  224.     -V  If you  use this switch, TbScan  will display the position  from
  225.         the beginning  of a  file where  the first  stable code has been
  226.         found. This is the  position of the part  of the file that  will
  227.         be scanned.
  228.  
  229.     -M  When you  enter the parameter -M  TbScan will stop after  it has
  230.         checked  the  contents  of  one  display.  This  gives  you  the
  231.         possibility  to  look  at  the  results.  (Of course the program
  232.         takes the number of lines of the display you use into account.)
  233.  
  234.     -A  Normally TbScan only  uses the analysis method when  the program
  235.         to be checked  is too complicated  for the builtin  interpreter.
  236.         But through option -A you  can force TbScan to use  the analysis
  237.         method allways. Keep in mind  though that the program will  work
  238.         more slowly then.
  239.  
  240.         When no filename has  been specified only executable  files will
  241.         be  analyzed.  If  a  filename  has  been  specified,  then  ALL
  242.         matching  files  will  be  searched  for  viruses.  In that case
  243.         TbScan will also  search for EVERY  virus in the  list: the file
  244.         type will be ignored.
  245.  
  246.     -D  TbScan communicates with  DOS through interrupt 21h. To  prevent
  247.         this  from  being  "monitored"  by  viruses,  option  -D  can be
  248.         entered. TbScan will use its  built-in debugger to work its  way
  249.         through the  chain of  interrupts until  it has  reached the DOS
  250.         entry point.  This address  is shown  on the  display and  after
  251.         that moment it will be used for the communication with DOS.  The
  252.         same applies to the communications with the disk system:  TbScan
  253.         first searches  for the  entry point  of the  BIOS, and performs
  254.         direct calls into  it. Resident programs,  such as viruses,  are
  255.         then excluded from taking part in the virus scan process.
  256.  
  257.         This implies however that  the regular resident programs  remain
  258.         ignorant too with regard to  the file access by TbScan.  That is
  259.         why you must  not enter this  option when you  use a multitasker
  260.         or when you are connected to a local area network.
  261.  
  262.         Also  note  that  many  protection  software  will  be fooled by
  263.         TbScan when  using the  -D option.  Don't be  surprised when  it
  264.         scans files you don't actually have any access to...
  265.  
  266.         When  you  do  use  this  option  do not popup resident programs
  267.         while TbScan  is active!  This is  because resident  programs do
  268.         not know that someone performs file access.
  269.  
  270.         The use of disk cachers is no barrier to the use of option -D.
  271.  
  272.         When you have installed the ThunderByte card in your PC,  TbScan
  273.         will  not  search  for  the  DOS  entry point, but for the entry
  274.         point  of  ThunderByte.  Otherwise  ThunderByte  should warn you
  275.         (correctly) that a  program performs direct  calls into DOS  and
  276.         the  BIOS.  So  only  ThunderByte  remains  between  TbScan  and
  277.         DOS/BIOS. Since no viruses  can be inserted between  ThunderByte
  278.         and DOS/BIOS, this is completely save.
  279.  
  280.     -S  With this  option there  will be  no search  for viruses  in the
  281.         bootsector of your hard disk.
  282.  
  283.     -R  Through this  option TbScan will not  search for viruses in  the
  284.         memory of your PC.
  285.  
  286.     +R  If you  specify this option TbScan  will search for all  viruses
  287.         of the signature file in the memory of your PC.
  288.  
  289.     -L  When you  use this  parameter, TbScan  creates a  LOG-file.  The
  290.         default  filename  is  TBSCAN.LOG  and  will  be  created in the
  291.         current  directory.  You  may  optionally  specify  a  path  and
  292.         filename.  In  the  LOG-file  all  infected  program  files  are
  293.         listed.   The  filenames  are  mentioned  including the complete
  294.         path name.
  295.  
  296.     +L  This option is the same  as the -L option, except that if  there
  297.         already exists a log file  the log information will be  appended
  298.         instead of overwritten.
  299.  
  300.     -N  TbScan  will  default  search  in subdirectories  for executable
  301.         files, except when a  filename (or wildcards) are  specified. If
  302.         you use this option TbScan will never search in subdirectories.
  303.  
  304.     +N  If  you   use   this  option  TbScan   will  always  search   in
  305.         subdirectories, even when you  specify a filename or  wildcards.
  306.         Only subdirectories matching the  filename mask will be  scanned
  307.         too.
  308.  
  309.     -U  TbScan  checks  the  signature  file  for modifications.  If you
  310.         change the contents  of that file  TbScan will issue  a warning.
  311.         If  you  don't  want  the  warning  to  be displayed, use the -U
  312.         option.
  313.  
  314.  
  315. EXAMPLES:
  316.         TBSCAN \ -s
  317.             Process all executable files  in the root directory  and its
  318.             sub directories. Skip the bootsector scan.
  319.  
  320.         TBSCAN \*.*
  321.             Process all  executable files  in the  root directory. Don't
  322.             process sub directories.
  323.  
  324.         TBSCAN test.dat -l c:\test.log
  325.             No file will be processed. TEST.DAT is not an executable.  A
  326.             LOG file with the name c:\test.log will be created.
  327.  
  328.         TBSCAN test.dat test.tmp -a
  329.             Search  test.dat  and  test.tmp  for  ALL  viruses using the
  330.             analyze method.
  331.  
  332.         TBSCAN C:\ -a
  333.             Process all executable files  in the root directory  and its
  334.             sub directories. Use the analyze method.
  335.  
  336.         TBSCAN C:\*.* -a
  337.             Process  ALL  files  in  the  root directory. Search for ALL
  338.             viruses in ALL files.  The analyze-method will be  used. Sub
  339.             directories will not be processed.
  340.  
  341.     The last two  examples shows the  difference in behaviour  of the /A
  342.     parameter when a filename and when no filename has been specified.
  343.  
  344.  
  345.     If you want  to use certain  options always it  can be handy  to use
  346.     the environment variable  "TBSCAN" for this.  If you always  use the
  347.     option -s you can insert the following line into your  autoexec.bat:
  348.                 SET TBSCAN=-S
  349.     TbScan  now  always  acts  like  you  specified the -s option on the
  350.     command line!
  351.  
  352.  
  353.     TbScan looks for the data file in the way mentioned hereunder:
  354.     1)  If the -F option is used it will use the specified file.
  355.     2)  It searches in the active directory for a file with the
  356.         name TBSCAN.DAT.
  357.     3)  It searches for TBSCAN.DAT in the same directory as the
  358.         program file TBSCAN.COM itself is located (only DOS 3+).
  359.     4)  It searches in the active directory for a file with the
  360.         name VIRSCAN.DAT.
  361.  
  362.  
  363.     As long as TbScan has not found any infected programs you will  only
  364.     see a list containing inspected files or, when you use option -Q,  a
  365.     counter at work.   As soon as  an infected program  has been  found,
  366.     the name  of the  infected program  and the  name of  the virus  are
  367.     printed (regardless of the use of option -Q).
  368.  
  369.     You will see  one of the  next three terms  behind every file  name:
  370.     "Scanning", "Tracing", "Analyzing". This indicates the way in  which
  371.     the file is checked.
  372.  
  373.     Behind these terms you will  see that, dependent on size,  structure
  374.     and kind of file, a number of plus signs appear. These indicate  how
  375.     often a  complete part  of the  file, bootsector  or memory has been
  376.     searched for viruses.
  377.  
  378.     The process can be aborted by pressing Ctr-C or Escape.
  379.  
  380.  
  381.  
  382. FORMAT OF THE DATA FILE
  383. -----------------------
  384.  
  385.     The data file (called TBSCAN.DAT or VIRSCAN.DAT) can be read  and/or
  386.     modified with every ASCII editor.
  387.  
  388.     All  lines  beginning  with  ";"  are  comment lines. TbScan ignores
  389.     these lines  completely. When  the ";"  character is  followed by  a
  390.     percent-sign the  remaining part  of the  line will  be displayed on
  391.     the screen.  A maximum  of 15  lines can  be printed  on the screen.
  392.     Nice for "HOT NEWS"...
  393.  
  394.     In the first line the name  of a virus is expected. The  second line
  395.     contains one or more of the next words:
  396.             BOOT  SYS  EXE  COM  HIGH  LOW
  397.  
  398.     These words may be separated by spaces, tabs or commas.
  399.  
  400.     BOOT means that the  virus is a bootsector  virus. SYS, EXE and  COM
  401.     indicate the virus  can occur in  files with these  extensions. Also
  402.     overlay files  (with the  extension OV?)  will be  searched for  EXE
  403.     viruses. HIGH shows that the virus  can occur in the memory of  your
  404.     PC  located  above  the  TbScan  program  itself. LOW means that the
  405.     virus can occur in  the memory of your  PC located under the  TbScan
  406.     program itself.
  407.  
  408.     In the  third line  the signature  is expected  in ASCII-HEX.  Every
  409.     virus character is  described by means  of two characters.   Instead
  410.     of two HEX characters, two question marks (the wild- card) may  also
  411.     occur. The  latter means  that every  byte on  that position matches
  412.     the signature. Below you will find an example of a signature:
  413.             A5E623CB??CD21??83FF3E
  414.  
  415.     You can also use the asterisk followed by an ASCII-HEX character  to
  416.     skip a  variable amount  of bytes  in the  signature. The  ASCII-HEX
  417.     character specifies the amount of bytes that should be skipped.  The
  418.     signature could be:
  419.             A5E623CB*3CD2155??83FF3E
  420.     The next sequence of bytes will be recognised as a virus:
  421.             A5E623CB142434CD21554583FF3E
  422.  
  423.  
  424.     Instead of a  signature in ASCII-HEX  you can also  specify a normal
  425.     text. This should be put  between double quotation marks. A  correct
  426.     signature is for example:
  427.             "I have got you!"
  428.  
  429.     This  series  of  three  lines  should  be repeated for every virus.
  430.     Between all lines comment lines may occur.
  431.  
  432.  
  433.  
  434. LIMITATIONS
  435. -----------
  436.  
  437.     +   128 Kb of free memory is sufficient.
  438.  
  439.     +   DOS version 2.0 or later is obligatory.
  440.  
  441.     +   The size of the data file has a maximum of 64 Kb.
  442.  
  443.     +   The name of a virus may consist of maximally 30 charac-
  444.         ters.
  445.  
  446.     +   The ASCII-HEX signature can consist of maximally 80 characters.
  447.  
  448.     +   Up to 500 different signatures may be given.
  449.  
  450.     +   Directories may be nested up to 15 levels.
  451.  
  452.  
  453.  
  454. ERRORMESSAGES
  455. -------------
  456.  
  457.     Errormessages that can be displayed:
  458.  
  459.     +   Not enough memory
  460.         There is not enough free memory.
  461.  
  462.     +   Error in data line at line <number>.
  463.         There is an error in the mentioned line of the data file.
  464.  
  465.     +   Failed to find DOS entry point.
  466.         TbScan has not been able to find the DOS entry point, but
  467.         continues as if option /D has not been specified.
  468.  
  469.     +   Error reading bootsector.
  470.         The bootsector could not be read and is therefore not checked.
  471.  
  472.     +   Limit exceeded.
  473.         The data file was too long or too many virus signatures
  474.         occur in it.
  475.  
  476.     +   Data file not found.
  477.         TbScan has not been able to find the data file.
  478.  
  479.     +   Command line error.
  480.         A wrong parameter has been given to TbScan.
  481.  
  482.     +   No matching files found.
  483.         The path specified does not exist, is empty, or the specified
  484.         file does not exist.
  485.  
  486.     +   No matching executable files found.
  487.         The path specified does not exist, is empty, or the specified
  488.         file does not exist or is not an executable file.
  489.  
  490.  
  491.  
  492.     TbScan terminates with one of the following exit codes:
  493.         Error level 2 when path or command line is not correct.
  494.         Error level 1 when infected files were found.
  495.         Error level 0 when everything was okay.
  496.  
  497.  
  498.  
  499.  
  500. THE INTERPRETER
  501. ---------------
  502.  
  503.     You can safely skip this  part of the documentation. It  just offers
  504.     information to  programmers who  want to  know why  and how the file
  505.     interpreter of TbScan is working.
  506.  
  507.     Viruses can infect program files  only in certain ways. For  a virus
  508.     there is  only one  single point  in a  program file  of which it is
  509.     certain that  it must  be executed,  namely the  star- ting point of
  510.     the program. It cannot  be sure of any  other point and that  is why
  511.     it will not try  to put its first  code on an arbitrary  spot of the
  512.     program that it is planning to in- fect. The virus will always  have
  513.     to put AT LEAST one jump at the entry point of the program.
  514.  
  515.     TbScan uses  this knowledge  to restrict  the number  of bytes  that
  516.     have to  be read  in of  a file  as much  as possible.   Just as the
  517.     loader of  DOS itself,  it determines  where the  entry point of the
  518.     program  is  located.  (At  the  beginning  of  a COM-file and on an
  519.     address, specified in the EXE-header of an EXE-file.)
  520.  
  521.     This is  however not  enough; there  can also  be a  jump or another
  522.     branch  instruction  on  the  found  starting  point of the program.
  523.     TbScan will follow this  jump until it does  not come across a  jump
  524.     anymore. Then we have found  the real starting point of  the program
  525.     or, in case it has been infected, the virus.
  526.  
  527.     There is a possibility however  that on a certain moment  TbScan has
  528.     reached the end of  a chain of jumps  and then finds that  there are
  529.     new  significant  IP  modifying  instructions  (calls,  rets, irets,
  530.     jumps) not  far from  the found  starting point.   Does this  future
  531.     jump point to the virus code or are we alrea- dy on the right  spot?
  532.     TbScan does not take any chances and in such a case it will read  in
  533.     the whole file to  search for viru- ses.  Only when it is  100% sure
  534.     to have found the real starting  point of a file, where in  addition
  535.     at  least  20  bytes  of  continuous  code are situated (the code is
  536.     "stable"  then),  TbScan  will  be  satisfied with checking only the
  537.     first 3 Kb of  the found code. (Almost  all viruses use less  than 3
  538.     Kb and of viruses using more than 3 Kb the signature in the first  3
  539.     Kb of the virus is used as the signature.)
  540.  
  541.     A nice advantage of this interpreter  is that the number of times  a
  542.     false alarm is given decreases. Because of this signa- tures can  be
  543.     shorter than usual which  is desirable because the  unmodified parts
  544.     of the viruses become shorter every time.
  545.  
  546.     Behind the name of every program the used method appears. These are:
  547.  
  548.       1) Scanning. This means TbScan has been able to find the
  549.          entry point of the program with succes and that the code
  550.          it has found there was stable.
  551.       2) Tracing. This means TbScan has followed a chain of at
  552.          least 1 jump from the entry point. The final code was
  553.          stable. This method will be used especially for TSR's
  554.          because most of the time they start with a jump instruc-
  555.          tion.
  556.       3) Analyzing. Because there was no stable code on the found
  557.          position TbScan was not completely sure of where the
  558.          starting point of the program was. For safety the whole
  559.          file is read in and inspected. Files with extension SYS
  560.          are always searched according to this method.
  561.  
  562.     Obviously, if you want to, you can force TbScan by means of
  563.     option -A to use always the analyzing method.
  564.  
  565.  
  566.     Note: Most viruses will  be found in a  file that has been  searched
  567.     according to the  analysis method. However  this does not  mean this
  568.     method is more reliable than the  other ones, but it is a  result of
  569.     the fact that a  virus in a program  relocates itself first most  of
  570.     the time (adapt  CS/IP relation).   This is always  accompanied by a
  571.     CS  and   IP  modifying   instruction  because   of  which    TbScan
  572.     automatically  (and  correctly)  concludes  the  code  is not stable
  573.     enough. That is why an  infected program is often checked  using the
  574.     analysis method.
  575.  
  576.  
  577.  
  578. THUNDERBYTE
  579. -----------
  580.  
  581.     Virus scanners have a number of very serious disadvantages!
  582.  
  583.     +   They cannot prevent infection.
  584.         Virus scanners can only tell you whether or not your system  has
  585.         been infected  and if  so, whether  any damage  has already been
  586.         done. By then only a  good (non-infected) backup can still  save
  587.         you.
  588.  
  589.     +   They  can  only  recognize   viruses  that  have   already  been
  590.         identified. When a  new virus has  been launched it  will take a
  591.         while before someone discovers it. After that it will take  some
  592.         time before a reliable signature  is dis- tilled from the  virus
  593.         and it will also take a while for you to get hold of the  newest
  594.         virscan.dat.  All  this means that  there is a  real chance that
  595.         your system is infected at a moment virus scanners have not  yet
  596.         recognized "your" virus!
  597.  
  598.     +   You will  have to  do an  active operation  in order  to protect
  599.         your  system:  namely  executing  the  virus scanner.  Even with
  600.         TbScan this takes time and so it is unpleasant.  Certainly  when
  601.         a PC  is used  by more  than one  person, like  for instance  in
  602.         companies, things go wrong quite often.
  603.  
  604.     Viruses get more  and more advanced.  Among other things  because of
  605.     all the  attention the  media is  paying to  the phenomenon computer
  606.     virus. It  has even  become a  real sport  for sick  minds to  write
  607.     computer  viruses.  Even  viruses  that  have  no  stable  signature
  608.     anymore  have  already  been   discovered.  Because  TbScan   allows
  609.     wildcards in the data file it  can still trace this kind of  viruses
  610.     quite often. But it will  not take much time anymore  before viruses
  611.     will be  created that  have no  special charac-  teristics at all by
  612.     which they can be identified.  And then even TbScan cannot  help you
  613.     anymore. Even viruses that look for the DOS entry point in the  same
  614.     way as TbScan does, avoiding detection by protection programs in  an
  615.     effective way, already exist.
  616.  
  617.     To provide programs with a  checksum is neither a solution:  as soon
  618.     as a file is  read in, viruses can  disinfect it, so every  infected
  619.     program looks like one that is not.
  620.  
  621.     There is however ONE solution for the abovementioned problems:
  622.                          *** ThunderByte! ***
  623.  
  624.     ThunderByte  was  developed  to  protect  Personal Computers against
  625.     computer viruses, Trojan Horses and other threats to valuable  data.
  626.     It  is  a  hardware  protection,  consisting  of an adapter card, an
  627.     installation  and  configuration  program  and  a  clear manual. The
  628.     working  of  ThunderByte  is  not  based  on  knowledge  of specific
  629.     viruses, so ThunderByte also protects against future viruses.
  630.  
  631.     A hardware protection  offers much more  protection than a  software
  632.     protection.  ThunderByte  is  already  active  before  the operating
  633.     system is loaded,  so the computer  will be totally  protected right
  634.     after the starting of the PC.
  635.  
  636.     Because of the many configuration possibilities and the  intelligent
  637.     algorisms, the use  of ThunderByte will  never become a  burden: you
  638.     will hardly  notice the  presence of  ThunderByte in  an environment
  639.     without any viruses.
  640.  
  641.  
  642.     Advantages of a hardware protection:
  643.  
  644.     +   The protection uses very little (1Kb) RAM
  645.  
  646.     +   The protection is  already active before the first boot  attempt
  647.         of  the  PC,  and  therefore  protects  also  against bootsector
  648.         viruses.  A  software  protection  can  not  protect you against
  649.         bootsector  viruses,  since  it  has  not  been executed at boot
  650.         time.
  651.  
  652.     +   De hard  disks  can  not be  accessed directly  anymore, because
  653.         ThunderByte is connected to the hard disk cable.
  654.  
  655.     +   It is  impossible  to forget to  start ThunderByte, even  if the
  656.         machine is booting with a diskette.
  657.  
  658.  
  659.  
  660.     ThunderByte offers you many kinds of protection:
  661.  
  662.  
  663.     +   Protection against loss of data.
  664.  
  665.         ThunderByte is connected between the cable of the hard disk  and
  666.         the controller. It  prevents the hard  disk from being  accessed
  667.         directly. The only  way to access  the drive from  now on is  by
  668.         initiating an int 13h.
  669.  
  670.         In addition  ThunderByte detects  all direct  disk writes  which
  671.         try  to  achieve  a  modification  or  damage of the data and it
  672.         checks which  program orders  the execution  of such operations.
  673.         Only  the   operating  system   can  preform   these  operations
  674.         unmentioned.
  675.  
  676.         Standard DOS  already has  the possibility  of protecting  files
  677.         against overwriting and modification  by means of the  read only
  678.         attribute.  However   this  protection   can  be   very   easily
  679.         eliminated  by  software.  But   ThunderByte  pre-  vents   this
  680.         protection from being ruled  out without this being  noticed, so
  681.         now  it  is   nevertheless  possible  to   protect  your   files
  682.         effectively with a standard method.
  683.  
  684.  
  685.     +   Protection against infection.
  686.  
  687.         ThunderByte  protects  programs  (files  with the extension EXE,
  688.         COM or SYS) against infection by judging all modifi- cations  on
  689.         their intention.  The functionality  is not  influenced by this.
  690.         Compiling,  linking,  etc.,  are  not  disturbed and neither are
  691.         programs   that   save   their   confi-   guration   internally.
  692.         Furthermore software  can be  protec- ted  with the  help of the
  693.         aforementioned read only attribute.
  694.  
  695.         Attempts to modify the bootsector  of the disk are detected,  so
  696.         the  dreaded  bootsector  viruses  are  also eliminated. Keep in
  697.         mind that the  bootsector can hardly  be protected by  software.
  698.         Only  ThunderByte  already  beco-  mes  active before the system
  699.         tries to boot!
  700.  
  701.  
  702.     +   Detection of viruses.
  703.  
  704.         In  addition  to  the  abovementioned  ways  of  detecting   the
  705.         presence of viruses, ThunderByte can also do so because  viruses
  706.         carry  out  a  number  of  special  operations. For example, the
  707.         marking  of  already  infected  programs  in  order to recognize
  708.         them,  is  detected  by  ThunderByte.  So  are  the  attempts of
  709.         viruses to  reside in  the memory  in a  suspicious way  and the
  710.         abnormal manipulations with interrupt vectors.
  711.  
  712.  
  713.     +   Password protection.
  714.  
  715.         ThunderByte  has  the  possibility  of  installing  a  password.
  716.         There are two kinds of  passwords: one that is always  asked for
  717.         or one that  you only have  to enter when  attempts are made  to
  718.         start from a diskette instead of the hard disk.
  719.  
  720.     +   Safety.
  721.  
  722.         A lot of  attention has been  paid to the  safety of ThunderByte
  723.         The program code of ThunderByte  is located in ROM and  there is
  724.         no way it can be modified.
  725.  
  726.         There  is  not  one  method  of  eliminating ThunderByte through
  727.         software. All the important settings are realized with the  help
  728.         of  dipswitches  on  the  adapter  card.  And  despite all their
  729.         wasted  intelligence,  viruses  will  never  be  able  to   turn
  730.         switches or to influence their read outs.
  731.  
  732.         Viruses that approach the  controller of the hard  disk directly
  733.         will  have  a  rude  awakening:  ThunderByte will only pass disk
  734.         writes when the write or format command has followed the  normal
  735.         (checked) course.
  736.  
  737.         There  are   a  lot   of  different   versions  of   ThunderByte
  738.         (functioning  identically  however)  that  are  supplied  on the
  739.         basis of capriciousness. That  is why knowledge of  the internal
  740.         working  of  only  one  ThunderByte  system is not sufficient to
  741.         damage or destroy its protective working.
  742.  
  743.         ThunderByte is constantly checking  upon its own variables  with
  744.         a kind  of control  number that  is different  for each version.
  745.         The positions  of the  memory where  the variables  are kept are
  746.         also different for each version.
  747.  
  748.  
  749.     +   Extra possibilities.
  750.  
  751.         ThunderByte offers  you some  interesting bonuses,  like booting
  752.         from drive B:, formatting of 5,25"  diskettes up to 428 Kb on  a
  753.         normal XT.
  754.  
  755.  
  756.  
  757. CONCLUSION
  758. ----------
  759.  
  760.     Are you surprised about the relative great effect and  inventiveness
  761.     of such a small (3  Kb) virusscan program? Get ThunderByte  and keep
  762.     on amazing yourself!
  763.  
  764.     If you  appreciate TbScan  or if  it has  already been  of help in a
  765.     difficult situation:
  766.  
  767.         Do not send us any money, but get yourself ThunderByte!
  768.  
  769.  
  770.  
  771. NAMES AND ADDRESSES
  772. -------------------
  773.  
  774.     For more information about Thunderbyte you can contact:
  775.  
  776.     ESaSS B.V.                          Tel:  31 - 80 - 238 689
  777.     P.o. box 1380                       Fax:  31 - 80 - 228 192
  778.     6501 BJ  Nijmegen                   Data: 31 - 85 - 212 395
  779.     The Netherlands                         (2:280/200 @fidonet)
  780.  
  781.  
  782.     TbScan is written by Frans Veldman.
  783.  
  784.     TbScan and the signature files are available on ESaSS /  Thunderbyte
  785.     support BBS, Tel: 31-85-212395 (300/1200/2400 bps).
  786.  
  787.     If  you  are  running  a  electronic  mail  system,  you  can   also
  788.     file-request  TBSCAN  to  get  the  latest  version  of  TBSCAN.COM,
  789.     TBSCANX  to  get  the  resident  automatic  version  of TBSCANX, and
  790.     VIRUSSIG to  obtain a  copy of  the latest  update of  the signature
  791.     file.